import java.util.List;


public class Ambiente {

	private Agente[][] area;
	
	public Ambiente(int tamanhoMatriz){
		area = new Agente[tamanhoMatriz][tamanhoMatriz];
	}
	
	public void sorteiaPecas(List<Agente> pecas, int tamanhoMatriz) {
        int contador = 0;        
        int x = 0;
        int y = 0;
        while (contador != pecas.size()) {            
            x = (int) (Math.random() * tamanhoMatriz);
            y = (int) (Math.random() * tamanhoMatriz);           

            if (!posicaoOcupada(x,y)) {
            	Agente alvo = pecas.get(contador);
                area[x][y] = alvo;                
                contador++;
            }
        }

    }
	
	private boolean posicaoOcupada(int x, int y){
		if(area[x][y] != null){
			return true;
		}
		return false;
	}
	
	@Override
	public String toString(){
		String matriz = "";
		for(int i = 0; i< area.length; i++){			
			for(int j = 0; j< area[i].length; j++){
				if(area[i][j] != null){
					if(area[i][j].isHomem()){
						matriz+="H"+area[i][j].getId()+"\t";
					}else{
						matriz+="M"+area[i][j].getId()+"\t";
					}
					
				}else{
					matriz+="x\t";
				}
			}
			matriz+="\n";
		}		
		return matriz;
	}
	
}
